package com.fengfeng.view.dialog;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.TextView;

import androidx.annotation.NonNull;

import com.fengfeng.sdk.login.LoginManager;
import com.fengfeng.sdk.model.UserInfo;
import com.fengfeng.sdk.R;
import com.fengfeng.sdk.SDKCallback;

/**
 * 自定义dialog
 */

public class LoginDialog extends BaseDialog {

    /**
     * 显示账号和密码输入框的文本
     */
    private EditText editAccount, editPassword;

    /**
     * 显示登录按钮
     */
    private Button loginBtn;

    /**
     * 显示忘记密码的文本
     */
    private TextView text2;

    /**
     * 显示通讯公司的图片
     */
    private ImageView imageTx, imageVx, imageAc;

    /**
     * 展示 "没有账号? 和 去注册的文本"
     */

    private TextView text3, text4, text5;
    private SDKCallback mSDKCallback;

    public LoginDialog(@NonNull Activity context, SDKCallback callback) {
        super(context, R.style.CustomDialog);
        mSDKCallback = callback;
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.dialog_layout);
        //按空白处不能取消动画
        setCanceledOnTouchOutside(false);
        //初始化界面控件
        initView();
        //初始化界面控件的事件
        initEvent();
    }


    /**
     * 初始化界面的确定和取消监听器
     */
    private void initEvent() {
        /**
         * 在登录按钮中执行相应的逻辑
         * 接入登录接口进行请求,返回数据
         */
        loginBtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                String inputAccount = editAccount.getText().toString();
                String inputPassword = editPassword.getText().toString();
                UserInfo userInfo = new UserInfo("", inputAccount, inputPassword);
                LoginManager.getInstance().loginRequest(userInfo);
            }

        });
        /**
         * 点击 "文本按钮" 到注册dialog
         */
        text4.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                //关闭登录弹窗
                dismiss();
                LoginManager.getInstance().showRegister(mActivity);
            }
        });

        /**
         * 点击 "文本按钮" 到忘记密码dialog
         */
        text2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                //关闭登录弹窗
                dismiss();
                ForgetDialog forgetDialog = new ForgetDialog(getContext());
                forgetDialog.show();
            }
        });
    }


    /**
     * 初始化控件
     */
    private void initView() {

        editAccount = findViewById(R.id.ed_ac);
        editPassword = findViewById(R.id.ed_ps);
        loginBtn = findViewById(R.id.btn);
        text2 = findViewById(R.id.text2);
        imageTx = findViewById(R.id.im_tx);
        imageVx = findViewById(R.id.im_vx);
        imageAc = findViewById(R.id.im_ac);
        text3 = findViewById(R.id.tv3);
        text4 = findViewById(R.id.tv4);
    }


    @Override
    public void show() {
        super.show();
    }
}
